Skip to main content

在您的 API 调用中使用环境变量

集成可以定义在应用代码执行时可用的环境变量。这些变量特别适用于处理像 OAuth 客户端 ID 和密钥这样的数据,因为您不希望将这些信息提交到源代码控制中。环境变量还可以作为在应用开发过程中切换测试环境和生产环境的工具,这比为测试目的创建独立的集成更推荐。

环境变量是按版本定义的。类似于本地开发环境(如 Platform CLI 中的环境),环境变量将键值对存储在您的应用 API 调用之外。最好不要在 API 认证、触发器或操作调用中直接硬编码关键的机密值,而是将它们作为环境变量添加到集成中,然后在 API 调用中引用这些环境变量。

如果使用 OAuth v2 认证,客户端 ID 和客户端密钥字段是保留的环境变量。对于其他变量,您需要使用自定义变量名称。

1. 添加环境变量

在您的 API 调用中使用环境变量

要添加环境变量:

  • 登录 Platform UI

  • 选择您的集成。

  • 在左侧边栏的“构建”部分,点击“高级”。在那里,您可以添加环境变量,包括每个变量的键和值。

  • 点击“添加”以包含更多环境变量,或点击 x 图标删除变量(如需要)。

  • 添加完键和值后,点击“保存”。

2. 引用环境变量

在您的 API 调用中使用环境变量

在 Zapier 的 API 调用表单或自定义代码中使用环境变量

您可以在 Zapier 集成中的任何 API 调用中使用环境变量,通过表单中的“显示选项”链接,选择“请求正文”、“URL 参数”或“HTTP 标头”,以符合您的 API 需求。引用您在“高级”设置中配置的环境变量,在表单中使用以下文本,将 YOUR_KEY 替换为您的实际键:\{\{process.env.YOUR_KEY\}\}。Zapier 会将该变量替换为“高级”设置中对应键的值,如果您将来更改该值,它会始终使用正确的版本。如果您将 API 调用切换到代码模式,也可以引用环境变量。

3. 修改环境变量

在您的 API 调用中使用环境变量

您可以更改环境变量的值,但不能修改原始键

在集成的新版本中,或在从开发端点切换到生产端点以发布集成时,您可以修改环境变量。

要修改环境变量:

  • 在左侧边栏的“构建”部分,点击“高级”。

  • 编辑“值”列中的文本以更新变量值。您无法编辑“键”。如果需要更改键及其值,首先删除旧键,然后添加新键。

4. 为测试和生产版本使用环境变量

我们强烈不推荐为测试目的使用独立的集成。通过使用 版本控制 和环境变量代替,部署、集成和用户管理流程(如迁移)将大大改善您的集成。这也有助于 开发者支持 准确了解您的工作内容并识别相关日志。

常规做法是为测试/预生产保留一个版本,为生产保留另一个版本,并在每个版本的“高级”设置中设置相应的环境变量。

如果您希望在开发中的一个版本中同时处理两个环境,一种方法如下:

  • 为您要调用的两个域设置环境变量。

  • 为要使用的域设置另一个环境变量。例如,键: ENVFLAG / 值: staging

在您的 API 调用中使用环境变量

  • 在整个应用中,在 代码模式 中,检查后一个变量的值,并有条件地引用相应的域环境变量。

例如:

let domain;
if (process.env.ENVFLAG === "staging") {
domain = process.env.STAGING;
} else {
domain = process.env.PRODUCTION;
}
const options = {
url: domain, // 根据 envFlag 有条件设置
method: 'POST',
headers: { // 标头
},
body: { // 正文
}
}

这样,在开发过程中,您可以通过切换一个环境变量的值来有条件地调用相应的域。

然而,一旦版本推送到生产环境,变量就会固定,因此对于 公共应用,请确保在升级前正确设置标志环境变量。

5. 允许用户选择环境

某些应用需要允许用户在认证过程中选择域。要实现这一点,请在 认证表单中创建输入字段,让用户选择其连接要交互的域。

在您的 API 调用中使用环境变量 在您的 API 调用中使用环境变量

在整个集成中使用 \{\{bundle.authData.env_url\}\} 来引用用户的选择,从而有条件地调用相应的域。

视频教程

您可以参考此视频了解如何使用环境变量:

需要帮助?告诉我们您的问题,我们会将您连接到合适的资源或联系支持。